package org.example.Server.mapper.examination;

import org.apache.ibatis.annotations.Mapper;
import org.example.Server.model.examination.Exam;
import org.example.Server.model.examination.data.DivisionData;
import org.example.Server.model.examination.data.PaperData;
import org.example.Server.model.examination.data.PointData;
import org.example.Server.model.examination.data.StuScoreData;
import org.example.Server.model.examination.qs.ExamOption;
import org.example.Server.model.examination.qs.QsExam;
import org.example.Server.model.examination.qs.QsExamDTO;
import org.example.Server.model.examination.qs.QsExamVO;

import java.util.List;
import java.util.Map;

@Mapper
public interface TeachExamDataMapper {

    PaperData getPaperdata(Exam exam);

    List<DivisionData> getDivisionData(Exam exam);

    List<Double> getQsAverList(Exam exam);

    List<PointData> getPointDatas(Exam exam);

    /**
     * 获取优秀良好及格不及格人数比例
     *
     * @param exam
     * @return
     */

    Map<String, Long> getScoredata(Exam exam);

    List<QsExam> getExamQsList(Exam exam);

    /**
     * 查询考试中问答题得分详情
     *
     * @param exam
     * @return
     */
    QsExamVO getExamQsQna(QsExamDTO exam);

    /**
     * 查询考试中选择类题得分详情
     *
     * @param exam
     * @return
     */
    List<ExamOption> getExamQsSel(QsExamDTO exam);
}
